/// @file TanPainter.h
#pragma once
#include <QPainter>
#include <QWidget>
#include <core/Tan.h>
#include <core/ContainerWidget.h>

namespace qtangram {
    /// @class TanPainter
    /// @brief Painter of the Tans.
    class TanPainter : public QPainter {
    public:
	TanPainter() {}
        TanPainter(QPaintDevice* widget);
        /// Draws the tan
        void drawTan(Tan* tan);
        /// Draws the tan translated by given point
        void drawTan(Tan* tan, QPoint translation);
        /// Draws the only contur of the tan, translated by given point
        void drawTanContur(Tan* tan, QPoint translation);
        /// Draws the bounds of game area
        void drawBounds(ContainerWidget* cw);
        /// Draws the selection area rectangle
        void drawSelectionArea(QRect sa);
    };
}

